int count, LONG;

LONG=100;
i=1;

 // ********************    ,  100   *************************
interrupt [TIM0_OVF] void timer0_ovf_isr(void) 
{
TCNT0=0x45;  //  

switch stop (var_no)
{

	case 1:
{
if (trig==0)
{
PORTB=0x01;
trig=1;
}
else
{
if(count<LONG)count++;
else
{
	if(count==LONG)
	PORTB |= (i<<PORTB);
	i++;
	if(i>5)i=1;
	count=0;
}
}
} // case 1

	case 2:
{
if (trig==0)
{
PORTB=0x01;
trig=1;
}
else
{
if(count<LONG)count++;
	if(count==LONG)
	{
		if (PORTB==0xFF)b=1;
		if (PORTB==0)b=0;
		if (b==1) PORTB&=(PORTB<<1);
		if (b==0) PORTB = (PORTB|(i<<PORTB));
	i++;
	if(i>5)i=1;
	count=0;
	}
}
} // case 2

} // 

if (PINB.0==0)
{
var_no++
if (var_no==4)var_no=1;
trig=0;
count=0;
b=0;
}

} // 	